﻿// http://projecteuler.net/index.php?section=problems&id=1

// If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. 
// The sum of these multiples is 23.
//
// Find the sum of all the multiples of 3 or 5 below 1000.


let sumUpTo x = x * (x + 1) / 2

let sumOfMultiplesUpTo limit divisor = divisor * sumUpTo (limit / divisor)

let threes = sumOfMultiplesUpTo 999 3
let fives = sumOfMultiplesUpTo 999 5
let fifteens = sumOfMultiplesUpTo 999 15

let result = threes + fives - fifteens